// 导入 Pinia 的 defineStore 函数，用于定义状态管理的 store
import { defineStore } from 'pinia';

// 定义一个名为 'user' 的 store
// 这个 store 用于管理用户相关的状态
export const useUserStore = defineStore('user', {
    // 定义 store 的状态
    // userInfo 用于存储用户信息，初始值为 null
    state: () => ({
        userInfo: null,
    }),
    // 定义 store 的操作方法
    actions: {
        // 设置用户信息的方法
        // 参数 data: 包含用户信息的对象
        setUser(data) {
            this.userInfo = data;
        },
        // 清除用户信息的方法
        clearUser() {
            this.userInfo = null;
        }
    },
    // 定义 store 的 getters
    // getUserInfo 用于获取当前的用户信息
    getters: {
        getUserInfo: (state) => state.userInfo,
    }
});